package ${package}.${moduleName}.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import ${package}.${moduleName}.dto.request.${ClassName}PageRequest;
import ${package}.${moduleName}.dto.request.${ClassName}Request;
import ${package}.${moduleName}.dto.response.${ClassName}Response;
import ${package}.${moduleName}.entity.${ClassName};

import java.util.List;

/**
 * ${tableComment}
 *
 * @author ${author} ${email}
 * @since ${version} ${date}
 */
public interface ${ClassName}Service extends IService<${ClassName}> {
    /**
    * 分页查询${tableComment}
    *
    * @param page 分页信息
    * @return IPage<${ClassName}Response> ${tableComment}列表分页
    */
    IPage<${ClassName}Response> page${ClassName}(${ClassName}PageRequest page);

    /**
    * 根据id获取${tableComment}
    *
    * @param id ${tableComment}id
    * @return ${ClassName}Response ${tableComment}
    */
    ${ClassName}Response get${ClassName}Detail(Long id);

    /**
    * 新增${tableComment}
    *
    * @param ${ClassName?uncap_first} ${tableComment}
    * @return
    */
    Boolean save${ClassName}(${ClassName}Request ${ClassName?uncap_first});

    /**
    * 修改${tableComment}
    *
    * @param ${ClassName?uncap_first} ${tableComment}
    * @return
    */
    Boolean update${ClassName}(${ClassName}Request ${ClassName?uncap_first});


    /**
    * 批量删除${tableComment}
    *
    * @param idlist id集合
    * @return false-失败 true-成功
    */
    Boolean batchdel${ClassName}(List<Long> idlist);
}